
const AUTH_KEY = 'isLogin';
const PHONE_KEY = 'phone';

export default {
    /**
     * 设置登录状态
     */
    setLoginStatus(status) {
        uni.setStorageSync(AUTH_KEY, status);
    },

    /**
     * 获取登录状态
     */
    getLoginStatus() {
        return uni.getStorageSync(AUTH_KEY) === true;
    },

    /**
     * 设置用户手机号（或其他标识）
     */
    setPhone(phone) {
        uni.setStorageSync(PHONE_KEY, phone);
    },

    /**
     * 获取用户手机号
     */
    getPhone() {
        return uni.getStorageSync(PHONE_KEY);
    },

    /**
     * 清除登录状态和用户信息
     */
    clearAuthInfo() {
        uni.removeStorageSync(AUTH_KEY);
        uni.removeStorageSync(PHONE_KEY);
    },

    /**
     * 检查是否登录，未登录则跳转登录页
     * @param {Function} callback 登录成功后的回调函数
     */
    checkAuthAndRedirect(callback) {
        const isLogin = this.getLoginStatus();
        const phone = this.getPhone();

        if (!isLogin || !phone) {
            uni.showToast({
                title: '请先登录',
                icon: 'none'
            });
            setTimeout(() => {
                uni.redirectTo({
                    url: '/pages/login/index'
                });
            }, 1000);
            return false;
        } else {
            if (callback && typeof callback === 'function') {
                callback();
            }
            return true;
        }
    }
};
